| Liskovsches Substitutionsprinzip | Dieser Text beschreibt Liskovsches Substitutionsprinzip. Der untere Text beinhaltet die Liskovsches Substitutionsprinzip Beschreibung. Soweit es sich um ein definierbares Objekt handelt, sollte hier eine Liskovsches Substitutionsprinzip Definition vorhanden sein. Sollte eine Definition von Liskovsches Substitutionsprinzip fehlen, kann diese von Ihnen verfaßt werden. Wir sind bestrebt die Beschreibung von Liskovsches Substitutionsprinzip möglichst ausführlich zu halten.
Jeder Text bei Know-Library, sowie ein Teil davon (Definition, Beschreibung etc.), außer Bücher Beschreibungen kann bearbeitet werden. Falls die Beschreibung auf dieser Seite nicht korrekt ist klicken Sie auf 'Beschreibung editieren' um den Text zu korrigieren bzw. neuen einzufügen. Weitere Informationen und Bücher zum Thema Liskovsches Substitutionsprinzip Beschreibung , so wie Link zum Forum finden Sie weiter unten. Eine Übersicht der Texte, die das Thema Liskovsches Substitutionsprinzip beschreiben finden Sie auf der Seite alle Artikel über Liskovsches Substitutionsprinzip. Fragen zu dem Thema Liskovsches Substitutionsprinzip können im Forum gestellt werden. Klicken Sie hier um zu dem Forum zu wechseln.
Liskovsches Substitutionsprinzip ArtikelDas liskovsche Substitutionsprinzip ist ein Kriterium in der objektorientierten Programmierung, das angibt, wann ein Datentyp als Unterklasse eines anderen Typs modelliert werden soll. Es wird generell als das einzig gültige Kriterium angesehen.
Das liskovsche Substitutionsprinzip wurde 1993 von Barbara Liskov und Jeannette Wing in dem Artikel Family Values: A Behavioral Notion of Subtyping formuliert. In einem nachfolgendie Beschreibung wurde es folgendermaßen formuliert (Übersetzung):
- Sei q(x) eine beweisbares Merkmal von Objekten x des Typs T. Dann soll q(y) für Objekte y des Typs S wahr sein, wobei S ein Untertyp von T ist.
| |
Ein wichtiges Element objektorientierter Programmierung ist die Vererbung: Eine Klasse (die Unterklasse) wird von einer anderen Klasse (ihrer Oberklasse) abgeleitet und erbt dabei ihre Methoden und Datenelemente. Dabei können neue Datenelemente hinzugefügt sowie Methoden hinzugefügt oder ersetzt werden.
Dies führt zur Frage, unter welchen Umständen die Beziehung zweier durch Klassen modellierter Begriffe durch Vererbung beschrieben werden sollte, bzw. was Vererbung über die Beziehung der Oberklasse zur Unterklasse aussagt. Diese Frage wird normalerweise beantwortet mit: Vererbung beschreibt eine ist-ein-Beziehung. Eine typische Hierarchie von Objekten in einem Grafikprogramm könnte z.B. aus einer Oberklasse GrafischesElement und davon abgeleiteten Unterklassen wie Rechteck, Ellipse oder Text bestehen. Die Begründung beispielsweise der Ableitung der Klasse Ellipse von der Klasse GrafischesElement wird man begründen mit: Eine Ellipse ist ein grafisches Element. Die Klasse GrafischesElement kann dann beispielsweise eine allgemeine Methode zeichne definieren, die von Kreis ersetzt wird durch eine Methode, die speziell einen Kreis zeichnet.
Das Problem hierbei ist jedoch, dass das "ist-ein-Kriterium" ab und zu in die Irre führt. Wird für das Grafikprogramm beispielsweise die Klasse Kreis definiert, so würde man bei naiver Anwendung des "ist-ein-Kriteriums" diese Klasse von Ellipse ableiten, denn ein Kreis ist eine Ellipse, nämlich eine Ellipse mit gleichlangen Halbachsen. Diese Ableitung kann jedoch in dem Kontext des Grafikprogramms falsch sein: Grafikprogramme erlauben es üblicherweise, die grafischen Elemente zu verändern. Beispielsweise lässt sich bei Ellipsen die Länge der beiden Halbachsen unabhängig voneinander ändern. Für einen Kreis gilt dies jedoch nicht, denn nach einer solchen Änderung wäre er kein Kreis mehr. Hat also die Klasse Ellipse die Methoden SkaliereX und SkaliereY, so würde die Klasse Kreis diese Methoden erben, obwohl ihre Anwendung für einen Kreis nicht erlaubt ist.
Das liskovsche Substitutionsprinzip hingegen funktioniert auch hier. In dem vorliegenden Fall würde festgestellt, dass die Aussage "die Achsen können unabhängig voneinander skaliert werden" zwar für die Klasse Ellipse, jedoch nicht für die Klasse Kreis gilt. Wäre jedoch Kreis eine Unterklasse von Ellispe, so müsste nachdem liskovschen Substitutionsprinzip diese Aussage auch für die Klasse Kreis gelten. Daher ist Kreis hier keine Unterklasse von Ellipse.
Zu beachten ist hierbei, dass die Entscheidung jeweils abhängig vom konkreten Fall ist. Ist beispielsweise eine Manipulation der geometrischen Figur nach der Erzeugung nicht vorgesehen, so kann Kreis durchaus von Ellipse abgeleitet sein: Dann ist "die Achsen können unabhängig voneinander skaliert werden" keines Merkmal der Klasse Ellipse, und somit muss sie auch keines Merkmal von Kreis sein, um Kreis zur Unterklasse von Ellipse zu machen.
|
Weiteres zu dem Artikel Liskovsches Substitutionsprinzip | | Andere Leser interessierten sich auch für folgende Beschreibungen: | Manipulation, Vererbung, Klasse, Figur | | Schnellzugrif auf verwandte Texte: | | | NEU! Frage im Forum zum Thema: | | Wenn die Beschreibung 'Liskovsches Substitutionsprinzip' Ihrer Meinung nach nicht korrekt ist oder in aktueller Version Fehler enthalten sind oder es fehlt die Liskovsches Substitutionsprinzip Definition, dann klicken Sie bitte auf "Beschreibung bearbeiten" und schreiben Sie die Eigene Version des Textes. Die Änderungen in der Beschreibung werden sofort aktiv und für alle sichtbar. Ein Administrator wird Ihre Version der Beschreibung und Definition von 'Liskovsches Substitutionsprinzip' nachher prüfen. Bitte achten Sie auf die Urheberrechte (Copyright). Wir sind für die besseren Beschreibung von 'Liskovsches Substitutionsprinzip' und 'Liskovsches Substitutionsprinzip' Definition sehr dankbar.
Alle Tipps zu den Bücher auf dieser Seite wurden automatisch generiert. D.h. die Bücher wurden aus einer Datenbank von dem Computer ausgesucht. Deshalb kann es vorkommen, dass vorgeschlagene Bücher nicht ganz der 'Liskovsches Substitutionsprinzip' Beschreibung entsprechen.
Liste aller verwandten Artikel: A, Ableitung, Anwendung, Aussage, Barbara, Beziehung, Datentyp, Eigenschaft, Element, Elemente, Ellipse, Entscheidung, Figur, Frage, Grafikprogramm, Hierarchie, Jeannette, Klasse, Kontext, Kreis, Kriterium, Manipulation, Methode, Problem, Programmierung, S, T, Unterklasse, Vererbung |
|
|
· Diese Seite wurde bisher 283 mal abgerufen. · Letzte Counteraktualisierung erfolgte am 17.05.2008 um 08:55:41 · Diese Seite wurde zuletzt geändert um 10:40, 2. Okt 2004. · Letzte Portalaktualisierung erfolgte um 08:00:00 GMT, 25.02.2008
|